解题思路:
第一处:应该取模而不是整除,所以应为:aa[i]=m%k;。
第二处:输出aa的位置不正确,所以应为:printf("%d",aa[i-1]);。
***************************************************
编写一个函数,从num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址。(注意: 主函数中用****作为结束输入的标志,函数fun中给出的语句仅供参考。)
注意:部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
给定源程序:
#include
#include
fun(char(*a)[81],int num,char **max)
{
int i,k=0,len, maxlen; /* k为a数组中最长串所在元素的下标,初始为0,maxlen为其串
长 */
maxlen=strlen(a[k]);
for(i=1;i {
/* 以下完成查找最长串 */
}
*max=a[k];
}
main()
{
char ss[10][81],*ps;
int n,i=0;
printf("输入若干个字符串:");
gets(ss[i]);
puts(ss[i]);
while(!strcmp(ss[i],"****")==0)
{
i++;
gets(ss[i]);
puts(ss[i]);
}
n=i;
fun(ss,n,&ps);
printf("\nmax=%s\n",ps);
NONO();
}